﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class Konto : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IKonto {
        
        private System.Int64? @__objektID;
        
        private string @__kontoNR;
        
        private string @__kontoHaldur;
        
        private System.DateTime? @__algusKP;
        
        private System.DateTime? @__loppKP;
        
        private global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IIsik @__kontoOmanik;
        
        private System.DateTime? @__sulgemiseKP;
        
        private string @__klientsysteemiID;
        
        public Konto() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public Konto(System.Int64? @objektID, string @kontoNR, string @kontoHaldur, System.DateTime? @algusKP, System.DateTime? @loppKP, global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IIsik @kontoOmanik, System.DateTime? @sulgemiseKP, string @klientsysteemiID) {
            this.@__objektID = @objektID;
            this.@__kontoNR = @kontoNR;
            this.@__kontoHaldur = @kontoHaldur;
            this.@__algusKP = @algusKP;
            this.@__loppKP = @loppKP;
            this.@__kontoOmanik = @kontoOmanik;
            this.@__sulgemiseKP = @sulgemiseKP;
            this.@__klientsysteemiID = @klientsysteemiID;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected Konto(IKonto @konto) {
            this.@__objektID = @konto.ObjektID;
            this.@__kontoNR = @konto.KontoNR;
            this.@__kontoHaldur = @konto.KontoHaldur;
            this.@__algusKP = @konto.AlgusKP;
            this.@__loppKP = @konto.LoppKP;
            this.@__kontoOmanik = @konto.KontoOmanik;
            this.@__sulgemiseKP = @konto.SulgemiseKP;
            this.@__klientsysteemiID = @konto.KlientsysteemiID;
        }
        
        public virtual System.Int64? ObjektID {
            get {
                return this.@__objektID;
            }
            set {
                this.@__objektID = value;
            }
        }
        
        public virtual string KontoNR {
            get {
                return this.@__kontoNR;
            }
            set {
                this.@__kontoNR = value;
            }
        }
        
        public virtual string KontoHaldur {
            get {
                return this.@__kontoHaldur;
            }
            set {
                this.@__kontoHaldur = value;
            }
        }
        
        public virtual System.DateTime? AlgusKP {
            get {
                return this.@__algusKP;
            }
            set {
                this.@__algusKP = value;
            }
        }
        
        public virtual System.DateTime? LoppKP {
            get {
                return this.@__loppKP;
            }
            set {
                this.@__loppKP = value;
            }
        }
        
        public virtual global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IIsik KontoOmanik {
            get {
                return this.@__kontoOmanik;
            }
            set {
                this.@__kontoOmanik = value;
            }
        }
        
        public virtual System.DateTime? SulgemiseKP {
            get {
                return this.@__sulgemiseKP;
            }
            set {
                this.@__sulgemiseKP = value;
            }
        }
        
        public virtual string KlientsysteemiID {
            get {
                return this.@__klientsysteemiID;
            }
            set {
                this.@__klientsysteemiID = value;
            }
        }
    }
}
